package com.itxiuyixiu.entity.mapper;

import com.itxiuyixiu.entity.enums.ActivityState;
import com.itxiuyixiu.entity.model.Activity;
import com.itxiuyixiu.entity.model.Project;

/**
 * @author 黄磊
 * @date 2020/5/2
 */
public interface ActivityWriterMapper {
    /**
     * 保存Organization（主键自增）
     *
     * @param activity 志愿者活动信息
     */
    void saveActivity(Activity activity);

    /**
     * 根据projectId修改
     *
     * @param activity 志愿者活动信息
     */
    void modifyActivityById(Activity activity);

    /**
     * 将相应的projectId设置为null
     *
     * @param projectId 要删除的projectId（设置为null）
     */
    void modifyProjectIdNull(Integer projectId);

    /**
     * 修改活动状态
     *
     * @param activityId 活动id
     * @param activityState 修改后的活动状态
     */
    void modifyActivityState(int activityId , ActivityState activityState);

    /**
     * 结束活动（完成活动结算，给志愿者分发工时，改变活动状态为finished）
     *
     * @param activityId 活动id
     */
    void finishActivity(int activityId);
}
